import java.util.*;

public class Main
{
    public static void main(String []args)
    {
	try
	{
	    Locale.setDefault(Locale.US);
	    Scanner in  = new Scanner(System.in);
	    int N = in.nextInt();
	    int m = in.nextInt();
	    int l = in.nextInt();
	    double[] Xi = new double [N];
	    double[] St = new double [N];
	    double[] F = new double[N];
	    Random rnd = new Random(System.nanoTime());
	    for (int i = 0; i < N; ++i)
	    {
		for (int j = 0; j < m; ++j)
		    Xi[i] += Math.pow(rnd.nextGaussian(), 2);
	    }

	    for (int i = 0; i < N; ++i)
	    {
		 double v = new Random(System.currentTimeMillis()).nextGaussian();
		 double temp = 0.0;
		 rnd = new Random(System.nanoTime());
		 for (int j = 0; j < m; ++j)
		     temp += Math.pow(rnd.nextGaussian(), 2);
		St[i] = v / Math.sqrt(temp / m);
	    }

	    for (int i = 0; i < N; ++i)
	    {
		 double temp = 0.0;
		 rnd = new Random(System.nanoTime());
		 for (int j = 0; j < l; ++j)
		     temp += Math.pow(rnd.nextGaussian(), 2);
		 F[i] = temp / l;
		 temp = 0;
		 for (int j = 0; j < m; ++j)
		     temp += Math.pow(rnd.nextGaussian(), 2);
		 F[i] /= temp / m;
	    }
	    double E[] = new double [3];
	    double D[] = new double[3];
	    for (int i = 0; i < N; ++i)
	    {
		E[0] += Xi[i];
		E[1] += St[i];
		E[2] += F[i];
	    }
	    E[0] /= N;
	    E[1] /= N;
	    E[2] /= N;
	    System.out.println(E[0] + "\t" + m);
	    System.out.println(E[1] + "\t" + 0);
	    System.out.println(E[2] + "\t" + (double) m / (m - 2));

	}
	catch(Throwable e){System.out.println(e.getMessage());}
    }

}